﻿using System;

public class Program
{
    public static void Main()
    {
        string userAlarmTime;

        while (true)
        {
            // 提示用户输入闹钟时间
            Console.WriteLine("请输入闹钟时间（格式：HH:mm:ss）：");
            userAlarmTime = Console.ReadLine();

            //判断数据是否合理
            if (DateTime.TryParse(userAlarmTime, out _))
            {
                AlarmClock alarmClock = new AlarmClock(userAlarmTime);

                alarmClock.Tick += (sender, e) =>
                {
                    Console.WriteLine($"当前时间：{DateTime.Now.ToString("HH:mm:ss")}");
                    Console.WriteLine("嘀嗒...");
                };

                alarmClock.Alarm += (sender, e) =>
                {
                    Console.WriteLine($"当前时间：{DateTime.Now.ToString("HH:mm:ss")}");
                    Console.WriteLine("闹钟响了!!!");
                };

                alarmClock.Start();
                break; // 退出循环，时间格式合法
            }
            else
            {
                Console.WriteLine("输入的时间格式不正确，请重新输入！");
            }
        }
    }
}